Sharing Memory Resources of Wireless Portable Electronic Devices

ABSTRACT

It is not uncommon for two or more wireless-enabled devices to spend most of their time in close proximity to one another. For example, a person may routinely carry a personal digital assistant (PDA) and a portable digital audio/video player, or a cellphone and a PDA, or a smartphone and a gaming device. When it is desirable to increase the memory storage capacity of a first such device, it may be possible to use memory on one or more of the other devices to temporarily store data from the first device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/909,975, filed Oct. 22, 2010, which is itself a continuation of U.S.patent application Ser. No. 11/382,151, filed May 8, 2006, now U.S. Pat.No. 7,831,786, issued Nov. 9, 2010, and both of which are incorporatedby reference in their entirety.

BACKGROUND

Limited memory resources pose a challenge with some portable electronicdevices. Applications installed on a portable electronic device arestored in the device's memory, as are user data items that are used bythe applications and system data used by the applications and theoperating system of the device. For example, a device having severaldifferent applications will store in its memory contact information,e-mail messages, tasks, calendar entries, instant messages, audio files,image files and other forms of user data items.

In order not to waste the limited memory resources, data may be arrangedand stored in an efficient manner, and techniques such as compressionmay be used. A user may also be able to add additional memory to thedevice, or to replace the existing memory of the device with memoryhaving greater storage capacity. There are also portable memory unitsthat can provide additional storage for the device. For example, if theportable electronic device has a universal serial bus (USB) port andsupports the ability to transfer data to an external storage unit, a USBflash drive may be connected to the portable electronic device and theuser may transfer data from the device to the drive. In another example,if the portable electronic device is a Bluetooth® (BT) device andsupports the ability to transfer data to an external storage unit, thenthe user may select certain data and transfer the selected data from thedevice to a dedicated BT hard disk drive.

At some point in time the memory of a portable electronic device mayhave insufficient capacity to store data in addition to whatever iscurrently stored therein, or the unused storage capacity of the memorymay have fallen below a predetermined threshold. The user of the devicemay then be prompted to erase some user data items in order to increasethe unused storage capacity of the memory. The device may have a memorymanager that automatically erases some of the user data items whenactivated.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are illustrated by way of example and not limitation in thefigures of the accompanying drawings, in which like reference numeralsindicate corresponding, analogous or similar elements, and in which:

FIG. 1 is a block diagram of an exemplary communications system,according to some embodiments;

FIG. 2 is a flowchart of an exemplary method for transferring data itemsor portions thereof to a wireless portable electronic device havingunused storage capacity, according to some embodiments;

FIG. 3 is a flowchart of an exemplary method for retrieving data itemsor portions thereof from the wireless portable electronic device,according to some embodiments; and

FIG. 4 is a schematic illustration of an exemplary communicationssystem, according to some embodiments.

It will be appreciated that for simplicity and clarity of illustration,elements shown in the figures have not necessarily been drawn to scale.For example, the dimensions of some of the elements may be exaggeratedrelative to other elements for clarity.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of embodiments.However it will be understood by those of ordinary skill in the art thatthe embodiments may be practiced without these specific details. Inother instances, well-known methods, procedures, components and circuitshave not been described in detail so as not to obscure the embodiments.

A person using a first wireless portable electronic device with limitedmemory resources may face a dilemma when the memory of the first devicebecomes too full. Should user data items be erased from the first deviceto make room for new data? Should additional memory for the first devicebe purchased? Should an external storage unit be purchased?

However, the person may also have in his or her possession a secondwireless portable electronic device that is often within range of thefirst device. For example, it is not uncommon for a person to carry apersonal digital assistant (PDA) and a portable digital audio/videoplayer, or a cellphone and a PDA, or a smartphone and a gaming device.Some people even carry three or more wireless portable electronicdevices. A non-exhaustive list of examples for the devices includes anyof the following: personal digital assistants (PDAs), electronicorganizers, handheld computers, cellular telephones, smart phones,gaming devices, digital audio players, digital video players, mobilemanagers, wireless smart card readers and the like.

The first device and the second device may be able to conduct securewireless communications therebetween using cryptographic techniques andauthentication algorithms. A non-exhaustive list of examples of wirelesscommunication protocols with which the first device and the seconddevice may be compatible includes Bluetooth® (BT), ZigBee™, ultrawideband (UWB), wireless USB, IEEE 802.11, radio frequencyidentification (RFID) protocols, and proprietary communicationprotocols. The first device and the second device may each have anaddress by which it can be addressed in the wireless communicationprotocol. For example, if the devices are BT devices, the first devicehas a unique BT address and the second device has a unique BT address.

If the second device has unused storage capacity, then data items orportions thereof from the first device may be transmitted via the securewireless communications to the second device for storage therein. Thefirst device will replace the data item or portion thereof withinformation that will be used to retrieve the data item or portionthereof from the second device when desired. Since the informationoccupies less memory than the data item or portion thereof itself, theunused storage capacity of the memory of the first device is increased.Although this description focuses on a first device and a second device,there may be in fact more than one “second device” to which data itemsare transmitted from the first device for storage therein. A centralizedbook-keeping application may be used to keep track of where all of theexternally stored data items have been moved to. This provides a methodfor sorting data items by device. In the case where the user wishes tomake one of the second devices obsolete, all of the data items stored onthat device may be retrieved to the first device and/or re-stored inother locations.

The transfer of data items from the first device to the second devicemay be initiated by the user of the devices, or may occur automaticallywhen the unused storage capacity of the first device's memory decreasesbelow a threshold, or may occur automatically because a rule applies.

Rules may be applied automatically by the first device in order todetermine which data items are transferred to the second device, and inorder to determine when, if at all, to transfer the data items back tothe first device. The rules may also be applied even if the unusedstorage capacity of the first device's memory is above the threshold, asa preventative measure. A non-exhaustive list of examples for such rulesis given below.

The data items transmitted from the first device to the second devicefor storage therein could be user data items and/or large system dataitems that are used infrequently by the first device.

FIG. 1 is a block diagram of an exemplary communications system 100,according to some embodiments. System 100 comprises a first wirelessportable electronic device 102 and at least one second wireless portableelectronic device 104.

When within range of each other, devices 102 and 104 are able tocommunicate securely over a wireless communication link 106 usingcryptographic techniques.

Device 102 comprises an antenna 110, a wireless communication interface112, a processor 114 coupled to wireless communication interface 112,and a memory 116 coupled to processor 114. Memory 116 may be fixed in orremovable from device 102. Memory 116 may be embedded or partiallyembedded in processor 114. Processor 114 and memory 116 may be part ofthe same integrated circuit or in separate integrated circuits. Wirelesscommunication interface 112, compatible with a short-range wirelesscommunication protocol, comprises a radio 117 coupled to antenna 110,and a processor 118 coupled to radio 117. Radio 117 may be asoftware-defined radio. Wireless communication interface 112 andprocessor 114 may be part of the same integrated circuit or in separateintegrated circuits. Device 102 also comprises a cache 119 coupled toprocessor 114. Cache 119 may be internal or external to processor 114.

Similarly, device 104 comprises an antenna 120, a wireless communicationinterface 122, a processor 124 coupled to wireless communicationinterface 122, and a memory 126 coupled to processor 124. Memory 126 maybe fixed in or removable from device 104. Memory 126 may be embedded orpartially embedded in processor 124. Processor 124 and memory 126 may bepart of the same integrated circuit or in separate integrated circuits.Wireless communication interface 122, compatible with the sameshort-range wireless communication protocol as wireless communicationinterface 112, comprises a radio 127 coupled to antenna 120, and aprocessor 128 coupled to radio 127. Radio 127 may be a software-definedradio. Wireless communication interface 122 and processor 124 may bepart of the same integrated circuit or in separate integrated circuits.

A non-exhaustive list of examples for antennae 110 and 120 includesdipole antennae, monopole antennae, multilayer ceramic antennae, planarinverted-F antennae, loop antennae, shot antennae, dual antennae,omnidirectional antennae and any other suitable antennae.

A non-exhaustive list of examples for processors 114, 118, 124 and 128includes a central processing unit (CPU), a digital signal processor(DSP), a reduced instruction set computer (RISC), a complex instructionset computer (CISC) and the like. Furthermore, processors 114, 118, 124and 128 may be part of application specific integrated circuits (ASICs)or may be a part of application specific standard products (ASSPs).

A non-exhaustive list of examples for memories 116 and 126 includes anycombination of the following:

-   -   a) semiconductor devices such as registers, latches, read only        memory (ROM), mask ROM, electrically erasable programmable read        only memory devices (EEPROM), flash memory devices, non-volatile        random access memory devices (NVRAM), synchronous dynamic random        access memory (SDRAM) devices, RAMBUS dynamic random access        memory (RDRAM) devices, double data rate (DDR) memory devices,        static random access memory (SRAM), universal serial bus (USB)        removable memory, and the like;    -   b) optical devices, such as compact disk read only memory (CD        ROM), and the like; and    -   c) magnetic devices, such as a hard disk, a floppy disk, a        magnetic tape, and the like.

Device 102 may comprise a user input component 130 and a user outputcomponent 132, both coupled to processor 114. A non-exhaustive list ofexamples for user input component 130 includes a keyboard, a microphone,a thumbwheel, a trackball, a joystick, a touch sensitive display and thelike. A non-exhaustive list of examples for user output component 132includes a display, a speaker, and the like.

Memory 116 may store applications 133 and code 134 to be executed byprocessor 114, rules 136 to be implemented by code 134, information 138about data items or portions thereof that have been stored in device104, and data items 135.

Devices 102 and 104 may comprise additional components which are notshown in FIG. 1 and which, for clarity, are not described herein.

FIG. 2 is a flowchart of an exemplary method for transferring data itemsor portions thereof to a wireless portable electronic device havingunused storage capacity, according to some embodiments. Code 134 storedin memory 116 may implement the method of FIG. 2 in device 102. Themethod of FIG. 2 may occur in the background. Alternatively, the user ofdevice 102 may be prompted for permission to perform the method of FIG.2. Alternatively, the user of device 102 may initiate performance of themethod of FIG. 2.

At 200, device 102 determines to transfer at least one data item 135 orportion thereof to another device. This determination may be initiatedby the user of device 102, or may occur automatically when the unusedstorage capacity of memory 116 decreases below a threshold, or may occurautomatically because one or more of rules 136 apply.

At 202, device 102 asks device 104 how much unused storage capacity isin memory 126. At 204, upon receiving the storage capacity informationfrom device 104, device 102 determines the maximum amount of data it cansend to device 104 for storage in memory 126. The request and reply maybe sent over wireless communication link 106, possibly securely.Alternatively, device 104 could send its unused storage capacityinformation to device 102 periodically or upon connection with device102 over the wireless communication link 106.

At 206, device 102 determines which data items 135 or portions thereofthat are currently stored in memory 116 to transmit to device 104. Forexample, rules 136 stored in memory 116 may be applied automatically bycode 134 in order to determine which data items 135 or portions thereofto transmit to device 104. A non-exhaustive list of examples for suchrules is given below.

At 208, device 102 writes information 138 in memory 116. Information 138is to be used in the future to retrieve from device 104 each data item135 or portion thereof to be transmitted. Information 138 may include,for example, an address or other indication of device 104. For example,the address may be the media access control address of device 104 or theunique BT address of device 104, if device 104 is a BT device.Information 138 may include, for example, a short summary of data item135 or portion thereof. Information 138, or a portion thereof, may bestored using a centralized book-keeping application in order to keeptrack of where all of the externally stored data items have been movedto.

At 210, device 102 securely transmits data items 135 or portionsthereof, as determined at 206, to device 104 over wireless communicationlink 106 using cryptographic techniques and authentication algorithms.Upon receipt, device 104 stores data items 135 or portions thereof inmemory 126. Devices 102 and 104 may have similar file systems and storedata items 135 or portions thereof in the same way. Alternatively,device 102 and 104 may have different file systems and store data items135 or portions thereof in different ways. Since data items 135 orportions thereof are serialized prior to transmission over link 106, thefile systems of device 102 and device 104 need not be the same orsimilar.

At 212, once device 102 has received confirmation from device 104 thatdata items 135 or portions thereof were successfully received, device102 erases from memory 116 the data items 135 or portions thereof thatwere transmitted to device 104.

Instead of asking device 104 how much unused storage capacity it has inmemory 126, device 102 may begin the method of FIG. 2 at 206 and riskthat device 104 will refuse to store all or some of the data items 135or portions thereof that are transmitted at 210. In this embodiment,device 102 only erases the data items 135 for which it receives aconfirmation of successful receipt from device 104. In this manner, thedata items 135 that device 104 refuses to store will not beinadvertently erased from device 102.

FIG. 3 is a flowchart of an exemplary method for retrieving data itemsor portions thereof from the wireless portable electronic device,according to some embodiments. Code 134 stored in memory 116 mayimplement the method of FIG. 3 in device 102.

At 302, device 102 identifies a need to retrieve a particular data item135 or portion thereof from device 104. For example, this need may beidentified from user input received via user input component 130. Inanother example, user data items of applications 133 of device 102 maybe synchronized with one or more applications on another device, forexample, a personal computer (not shown). If a particular user data itemor a portion thereof is stored on device 104, and the synchronizationapplication requests that particular user data item or portion thereof,then device 102 will identify a need to retrieve the particular userdata item or portion thereof from device 104.

At 304, device 102 securely requests the particular data item 135 orportion thereof from device 104 over wireless communication link 106.The request is based, at least in part, on the information 138 relatedto the particular data item 135 or portion thereof. If no wirelesscommunication link is established with device 104, or if the link islost, for example, in the case where device 104 is out of the wirelesscommunication range of device 102, the operation of retrieving the dataitem fails, and an error message may be displayed on device 102.

At 306, device 102 securely receives the particular data item 135 orportion thereof from device 104 over wireless communication link 106.

At 308, device 102 may store the particular data item 135 or portionthereof in cache 119. Applications 133 on device 102 may access theparticular data item 135 or portion thereof until it is overwritten incache 119. Memory 116 retains information 138 related to the particulardata item 135 or portion thereof and memory 126 retains its copy of theparticular data item 135 or portion thereof.

Alternatively, device 102 may store at 310 the particular data item 135or portion thereof in memory 116, instruct device 104 at 312 to deleteits copy of the particular data item 135 or portion thereof in memory126, and at 314, erase from memory 116 information 138 related to theparticular data item 135 or portion thereof.

The following is a non-exhaustive list of examples for rules that affectwhich data items or portions thereof are to be transmitted from thefirst device to the second device, and that affect when the first deviceidentifies a need to retrieve a particular data item or portion thereof.

Rules for Messages

If the first device has at least one messaging application to handlee-mail messages, instant messages, peer-to-peer messages, and the like,then any or a combination of the following rules, presented below in noparticular order, may apply.

(1) The first device may automatically store old messages on the seconddevice. This may take effect periodically, or when a memory manager ofthe first device requires more memory. The received time, sender andsubject may be retained on the first device, so that the user is able toidentify the message in a list of messages on the first device, and thebody of the message may be stored on the second device. When the userattempts to access the message on the first device, for example, byopening the message to view it or by searching for the message, the bodyof the message may be retrieved from the second device.

(2) The first device may retain a first portion of a message body, forexample, of a predetermined size such as 2 Kb, and may store theremaining portion of the message body on the second device. The user mayview the first portion of the message body on the first device, but asthe user scrolls down past the first portion, the remaining portion or anext portion of the message will have to be retrieved from the seconddevice in order for the user to view it. The first device will havestored information in its memory to enable the first device to retrievethe next portion or the remaining portion from the second device. Themessage displayed to the user, for example, via user output component132, may have an indication that there are additional portions of themessage body. The messaging application may automatically retrieve thenext portion or the remaining portion from the second device when theuser scrolls to the indication. Alternatively, the messaging applicationmay wait for the user to provide input, for example, via user inputcomponent 130, that the user wants to have the next portion or theremaining portion of the message body retrieved from the second device.

(3) Messages may be marked with a timestamp indicating the time at whichthe message was last accessed by the user of the first device. Messageswith a timestamp older than a predefined duration, for example, 30 days,may be automatically transmitted to the second device for storagetherein.

(4) Message attachments may be automatically stored on the seconddevice, rather than on the first device, and retrieved only whenrequired, for example, when a message is being forwarded to anotherrecipient. A threshold attachment size may be specified, whereinattachments larger than a threshold size may be automatically stored onthe second device, and smaller attachments remain on the first device.

Rules for Calendar Appointments

If the first device has a calendar application, then any or acombination of the following rules, presented below in no particularorder, may apply. Calendar appointments include calendar meetings.

(1) Calendar appointments for dates prior to a cut-off date may beautomatically stored on the second device, since they are unlikely to beaccessed frequently by the user. The cut-off date might be the currentdate, for example, such that all calendar appointments from past datesmay be automatically stored.

(2) Calendar appointments for dates that are more than a predeterminedtime in the future, for example, more than 30 days, may be automaticallystored on the second device. As the date of the calendar appointmentapproaches and is less than the predetermined time in the future, thecalendar appointment may be automatically retrieved from the seconddevice and stored solely on the first device.

(3) Notes of calendar appointments may be automatically stored on thesecond device, and retrieved from the second device only when the userattempts to access them.

Rules for Other User Data Items

Similar rules may be applied to user data items of other types.

FIG. 4 is an illustration of an exemplary communication system 400,according to some embodiments. System 400 is similar to system 100 ofFIG. 1, where device 102 is a mobile device 402, and device 104 is awireless smart card reader 404. Mobile device 402 and smart card reader404 are able to communicate securely over wireless communication link106. In the example shown in FIG. 4, wireless smart card reader 404 hasa user input component that is an electro-mechanical device 406,however, other and/or additional user input components are possible.Similarly, in the example shown in FIG. 4, mobile device 402 has userinput components 130 that include a thumbwheel 430, a keyboard 431 and amicrophone 432, and user output components 132 that include a display441, a speaker 442, and a light emitting diode (LED) 443.

A smart card 408 is shown inserted into smart card reader 404. Smartcards are personalized security devices, defined by the ISO7816 standardand its derivatives, as published by the International Organization forStandardization. A smart card may have a form factor of a credit cardand may include a semiconductor device. The semiconductor device mayinclude a memory that can be programmed with security information (e.g.,a private decryption key, a private signing key, biometrics, etc.) andmay include a processor and/or dedicated logic, for example, dedicateddecryption logic and/or dedicated signing logic. A smart card mayinclude a connector for powering the semiconductor device and performingserial communication with an external device. Alternatively, smart cardfunctionality may be embedded in a device having a different form factorand different communication protocol, for example a Universal Serial Bus(USB) device. The person whose security information is stored on smartcard 408 may use smart card reader 404 for identification, to unlockmobile device 402, and to digitally sign and/or decrypt messages sent bymobile device 402. Smart card 408 may also include a random numbergenerator.

For example, mobile device 402 may be able to send and receive e-mailmessages via an e-mail server (not shown). If, for example, the SecureMultipurpose Internet Mail Extensions (S/MIME) protocol is used, e-mailmessages received at mobile device 402 are encrypted using a symmetricalgorithm with a random session key generated by the sender of thee-mail message. The e-mail message also includes the session key,encrypted using the public key of the recipient. Upon receipt of anencrypted e-mail message, mobile device 402 may extract the encryptedsession key and send it to smart card reader 404 via communication link106. Smart card reader 404 may send the encrypted session key to smartcard 408, and the decryption engine of smart card 408 may decrypt theencrypted session key using the recipient's private decryption key,which is stored in smart card 408. Smart card reader 404 may retrievethe decrypted session key from smart card 408 and forward it to mobiledevice 402 via communication link 106 so that mobile device 402 candecrypt the received e-mail message. The smart card 408 may preventunauthorized use of the recipient's private decryption key by requiringthat a password or personal identification number (PIN) be suppliedbefore allowing the decryption operation to proceed.

Similarly, to add a digital signature to an e-mail message being sent bymobile device 402, mobile device 402 may send a hash of the contents ofthe e-mail message to smart card reader 404 over communication link 106.Smart card reader 404 may pass the hash to smart card 408, which mayproduce a digital signature from the hash and the sender's privatesigning key, which is stored in smart card 408. Smart card 408 may thenpass the digital signature to smart card reader 404, which may forwardit to mobile device 402 via communication link 106 so that mobile device402 can transmit it along with the e-mail message to the e-mail server.Again, smart card 408 may prevent unauthorized use of the recipient'sprivate signing key by requiring that a password or PIN be suppliedbefore allowing the signing operation to proceed.

The unencrypted message key should be sent securely over communicationlink 106 from smart card reader 404 to mobile device 402 to prevent athird party from retrieving the message key from communication link 106.Similarly, the hash to be signed should be sent authentically overcommunication link 106 from smart card reader 404 to mobile device 402to prevent a third party from modifying the hash and thereby causingsmart card 408 to produce a signature using a hash different from thehash of the intended message. Therefore communication link 106 may needto be secured using cryptographic techniques.

To secure communication link 106, smart card reader 404 may need togenerate various cryptographic keys. For example, if smart card reader404 and mobile device 102 are BT devices, then a relatively short (up to16-digits) key may be used for a Pairing procedure. An additional layerof security for communication link 106 may involve encryption with oneor more additional keys. These additional keys may be generated from ashared secret between smart card reader 404 and mobile device 402, andone or more symmetric keys based on this shared secret may be generatedusing known Diffie-Hellman and simple password exponential key exchange(SPEKE) methods and variants thereof. Moreover, random session keys maybe generated for each individual communication session overcommunication link 106.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. A method to manage data storage of a first wireless portableelectronic device, the method comprising: storing in a memory of thefirst wireless portable electronic device data items that are accessibleby a user of the first wireless portable electronic device viaapplications, wherein the applications are executable by a processor ofthe first wireless portable electronic device; securely transmitting adata item or portion thereof, currently stored in the memory, over adirect wireless communication link to a second wireless portableelectronic device; the processor writing in the memory information forretrieving the data item or portion thereof from the second wirelessportable electronic device; receiving confirmation from the secondwireless portable electronic device of successful receipt and ofsuccessful storage of the data item or portion thereof; and in responseto the receiving, the processor erasing from the memory the data item orportion thereof.
 2. The method of claim 1, further comprising: using theinformation for securely retrieving the data item or portion thereoffrom the second wireless portable electronic device over the directwireless communication link.
 3. The method of claim 2, furthercomprising: processor storing the retrieved data item or portion thereofin a cache of the first wireless portable electronic device.
 4. Themethod of claim 2, further comprising: the processor storing theretrieved data item or portion thereof in the memory of the firstwireless portable electronic device.
 5. The method of claim 1, furthercomprising: receiving information from the second wireless portableelectronic device about its unused storage capacity; and the processordetermining, based at least in part upon the unused storage capacity,which data items stored in the memory to transmit to the second wirelessportable electronic device.
 6. The method of claim 1, furthercomprising: the processor applying a set of rules to determine whichdata items currently stored in the memory are candidates fortransmission to the second wireless portable electronic device.
 7. Themethod of claim 6, wherein applying the set of rules includes applyingthe set of rules automatically without requiring user input orintervention.
 8. The method of claim 6, wherein applying the set ofrules comprises identifying messages that are older than a predeterminedthreshold age.
 9. The method of claim 6, wherein applying the set ofrules comprises identifying messages whose last access by the useroccurred prior to a predetermined cut-off date.
 10. The method of claim6, wherein applying the set of rules comprises identifying attachmentsto messages.
 11. The method of claim 6, wherein applying the set ofrules comprises identifying attachments to messages larger than apredetermined threshold size.
 12. The method of claim 6, whereinapplying the set of rules comprises identifying calendar appointmentsthat are older than a predetermined threshold age.
 13. The method ofclaim 6, wherein applying the set of rules comprises identifyingcalendar appointments that occurred in the past.
 14. The method of claim6, wherein applying the set of rules comprises identifying calendarappointments that occur in the future after a pre-determined date. 15.The method of claim 6, wherein applying the set of rules comprisesidentifying notes to calendar appointments.
 16. A first portableelectronic device, comprising: a memory storing code, the memoryarranged to store applications and arranged to store data items that areaccessible by a user of the first portable electronic device via theapplications; and a wireless communication interface through which thefirst device is operative to communicate securely and authenticallydirectly with a second portable electronic device, and a processorcoupled to the memory and to the wireless communication interface, theprocessor operative to execute the applications and the code, whereinexecution of the code by the processor causes the first portableelectronic device to securely transmit a data item or portion thereofvia the secure communications to the second portable electronic devicefor temporary storage therein, causes the first portable electronicdevice to write in the memory information for retrieving the data itemor portion thereof from the second portable electronic device, and, inresponse to receiving via the wireless communication interfaceconfirmation from the second wireless portable electronic device ofsuccessful receipt and of successful storage of the data item or portionthereof, causes the first portable electronic device to erase the dataitem or portion thereof from the memory.
 17. The first portableelectronic device of claim 16, wherein execution of the code by theprocessor causes the first portable electronic device to apply a set ofrules to determine which of the data items or portions thereof totransmit to the second portable electronic device.
 18. The firstportable electronic device of claim 17, wherein execution of the code bythe processor causes the first portable electronic device to apply theset of rules automatically without requiring user input or intervention.19. A system comprising: a first wireless portable electronic devicecomprising a processor and a memory, the memory operative to storeapplications that are executable by the processor, to store code that isexecutable by the processor, and to store data items that are accessibleby a user of the first wireless portable electronic device via theapplications; and a second wireless portable electronic device; whereinthe first wireless portable electronic device and the second wirelessportable electronic device are operative to conduct secure wirelesscommunications directly therebetween, and wherein execution by theprocessor of the code causes the first wireless portable electronicdevice to transmit a data item or portion thereof to the second wirelessportable electronic device via the secure wireless communications,causes the first wireless portable electronic device to write in thememory information for retrieving the data item or portion thereof fromthe second wireless portable electronic device, and, in response toreceiving via the wireless communication interface confirmation from thesecond wireless portable electronic device of successful receipt and ofsuccessful storage of the data item or portion thereof, causes the firstportable electronic device to erase the data item or portion thereoffrom the memory.
 20. The system of claim 19, wherein the first wirelessportable electronic device is a mobile device that is operative to sendand receive e-mail messages.